package com.katze.boot.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.katze.boot.system.domain.UserSetup;

public interface UserSetupService extends IService<UserSetup> {

    /**
     * 通过用户 ID 获取前端系统个性化配置
     *
     * @param username 用户名
     * @return 前端系统个性化配置
     */
    UserSetup findByUsername(String username);

    /**
     * 生成用户默认个性化配置
     *
     * @param username 用户名
     */
    void initDefaultUserSetup(String username);

    /**
     * 通过用户 ID 删除个性化配置
     *
     * @param usernames 用户名数组
     */
    void deleteByUsername(String... usernames);

    /**
     * 更新用户个性化配置
     *
     * @param  userSetup 用户个性化配置
     */
    void update(UserSetup userSetup);
}
